package com.transpot.service.car;

import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;
import com.transpot.entry.car.Car;
import com.transpot.entry.car.CarVO;
import org.springframework.web.multipart.MultipartFile;

import java.util.List;

/**
 * 车辆类的service层接口
 */
public interface CarService extends IService<Car> {
    /**
     * 车辆注册方法
     * @param car
     */
    void registerCar(Car car);

    /**
     * 获取CarVO的分页查询对象
     * @param iPage
     * @return
     */
    Page<CarVO> getCarVO(IPage<Car> iPage);

    /**
     * 根绝车辆id删除车辆信息
     * @param id
     */
    void deleteCarById(Integer id);

    /**
     * 修改车辆信息和图片信息方法接口
     * @param carVO
     * @param files
     */
    void updateWithPicture(CarVO carVO, MultipartFile[] files);

    /**
     * 根据登录的角色的id获取到与之关联的车辆信息
     * @param id
     * @return
     */
    List<CarVO> getCarListById(Integer id);
}
